Objectvariabelen maken

   

U kunt een objectvariabele op precies dezelfde wijze behandelen als het object waarnaar het verwijst. U kunt de eigenschappen van het object instellen of terugsturen, of een van de methoden van het object gebruiken.

U maakt als volgt een objectvariabele:

  1. Declareer de objectvariabele.

  2. Wijs de objectvariabele toe aan een object.

Een objectvariabele declareren

Gebruik de instructie Dim of een van de andere declaratie-instructies (Public, Private of Static) om een objectvariabele te declareren. Een variabele die naar een object verwijst moet een Variant, Object of een bepaald objecttype zijn. De volgende declaraties zijn bijvoorbeeld geldig:

' MyObject declareren als gegevenstype Variant.
Dim MyObject
' MyObject declareren als gegevenstype Object.
Dim MyObject As Object    
' MyObject declareren als type Font.
Dim MyObject As Font    

Opmerking Als u een objectvariabele gebruikt zonder deze eerste te declareren, is het gegevenstype van de objectvariabele standaard Variant.

Als het specifieke objecttype niet bekend is totdat de procedure wordt uitgevoerd, kunt u een objectvariabele met behulp van het gegevenstype Object declareren. Gebruik het gegevenstype Object om een algemene verwijzing naar alle objecten te maken.

Als u weet wat het specifieke objecttype is, declareert u de objectvariabele als dat objecttype. Als de toepassing bijvoorbeeld een objecttype Sample bevat, kunt u met behulp van een van deze instructies een objectvariabele voor dat object declareren:

Dim MyObject As Object    ' Gedeclareerd als algemeen object.
Dim MyObject As Sample    ' Alleen gedeclareerd als object Sample.

Het declareren van specifieke objecttypen levert een automatische controle van typen, een snellere programmacode en een verbeterde leesbaarheid op.

Een objectvariabele aan een object toewijzen

Gebruik de instructie Set om een object aan een objectvariabele toe te wijzen. U kunt een objectexpressie toewijzen of Nothing. De volgende toewijzingen aan objectvariabelen zijn geldig:

Set MyObject = YourObject    ' Wijst objectverwijzing toe.
Set MyObject = Nothing    ' Stop associatie.

Als u het sleutelwoord New met de instructie Set gebruikt, kunt u het declareren van een objectvariabele combineren met het toewijzen van een object hieraan. Bijvoorbeeld:

Set MyObject = New Object    ' Maak en wijs toe

Als u een objectvariabele instelt op Nothing, verbreekt u de koppeling van de objectvariabele met een bepaald object. U voorkomt hierdoor dat u door het wijzigen van een variabele per ongeluk een object wijzigt. Een objectvariabele wordt altijd ingesteld op Nothing als het object waarmee het is verbonden, wordt gesloten. Bijvoorbeeld:

If Not MyObject Is Nothing Then
    ' Variabele verwijst naar een geldig object.
    . . .
End If

Met deze test kunt u natuurlijk nooit met absolute zekerheid zeggen of een gebruiker de toepassing met object waarnaar de objectvariabele verwijst, heeft gesloten.

Verwijzen naar de huidige versie van een object

Gebruik het sleutelwoord Me om te verwijzen naar de huidige versie van een object waarop de programmacode wordt uitgevoerd. Alle procedures die met het huidige object zijn verbonden, hebben toegang tot het object dat wordt aangeduid als Me. Me is bijzonder handig als u informatie over de huidige versie van een object aan een procedure in een andere module wilt doorgeven. Neem bijvoorbeeld de volgende procedure in een module:

Sub ChangeObjectColor(MyObjectName As Object)
    MyObjectName.BackColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)
End Sub

Met behulp van de volgende instructie kunt u de procedure oproepen en de huidige versie van het object als een argument doorgeven:

ChangeObjectColor Me